1. Field of the Invention
The present invention relates generally to a digitizer for a bar code reader which detects bar code symbols which are generally printed on a label or on the surface of an article. More particularly, but not exclusively, the subject invention pertains to a digitizer as described which detects the presence of edges in a bar code symbol and also measures the strength of each detected edge.
2. Discussion of the Prior Art
Various optical readers and optical scanning systems have been developed heretofore for reading bar code symbols appearing on a label or on the surface of an article. The bar code symbol itself is a coded pattern of indicia comprised of a series of bars of various widths spaced apart from one another to bound spaces of various widths, the bars and spaces having different light-reflecting characteristics. The readers and scanning systems electro-optically transform the graphic indicia into electrical signals, which are decoded into alphanumerical characters that are intended to be descriptive of the article of some characteristic thereof. Such characters are typically represented in digital form and utilized as an input to a data processing system for applications in point-of-sale processing, inventory control, and the like. Scanning systems of this general type have been disclosed, for example, in U.S. Pat. Nos. 4,251,798; 4,369,361; 4,387,297; 4,409,470; 4,760,248; and 4,896,026, all of which have been assigned to the same assignee as the instant application.
As disclosed in some of the above patents, one embodiment of such a scanning system resides, inter alia, in a hand-held, portable laser scanning head supported by a user, which is configured to allow the user to aim the head, and more particularly, light beam, at a target and a symbol to be read.
The light source in a laser scanner is typically a gas laser or semiconductor laser. The use of a semiconductor device such as a laser diode as the light source in scanning systems is especially desirable because of their small size, low cost and low power requirements. The laser beam is optically modified, typically by a lens, to form a beam spot of a certain size at the target distance. It is preferred that the beam spot size at the target distance be approximately the same as the minimum width between regions of different light reflectivity, i.e., the bars and spaces of the symbol.
Bar code symbols are formed from bars or elements that are typically rectangular in shape with a variety of possible widths. The specific arrangement of elements defines the character represented according to a set of rules and definitions specified by the code or "symbology" used. The relative size of the bars and spaces is determined by the type of coding use, as is the actual size of the bars and spaces. The number of characters per inch represented by the bar code symbol is referred to as the density of the symbol. To encode a desired sequence of characters, a collection of element arrangements are concatenated together to form the complete bar code symbol, with each character of the message being represented by its own corresponding group of elements. In some symbologies a unique "start" and "stop" character is used to indicate where the bar code begins and ends. A number of different bar code symbologies exist. These symbologies include UPC/EAN, Code 39, Code 128, Codabar, and Interleaved 2 of 5.
For the purpose of our discussion, characters recognized and defined by a symbology shall be referred to as legitimate characters, while characters not recognized and defined by that symbology are referred to as illegitimate characters. Thus an arrangement of elements not decodable by a given symbology corresponds to an illegitimate character(s) for that symbology.
In order to increase the amount of data that can be represented or stored on a given amount of surface area, several new bar code symbologies have recently been developed. One of these new code standards, Code 49, introduces a "two-dimensional" concept by stacking rows of characters vertically instead of extending the bars horizontally. That is, there are several rows of bar and space patterns, instead of only one row. The structure of Code 49 is described in U.S. Pat. No. 4,794,239 which is hereby incorporated by reference.
A one-dimensional single-line scan, as ordinarily provided by hand-held readers, has disadvantages in reading these two-dimensional bar codes; that is, the reader must be aimed at each row, individually. Likewise, the multiple-scan-line readers produce a number of scan lines at an angle to one another so these are not suitable for recognizing a Code 49 type of two-dimensional symbols.
In the scanning systems known in the art, the light beam is directed by a lens or similar optical components along a light path towards a target that includes a bar code symbol on the surface. The scanning functions by repetitively scanning the light beam in a line or series of lines across the symbol. The scanning component may either sweep the beam spot across the symbol and trace a scan line across and past the symbol, or scan the field of view of the scanner, or do both.
Scanning systems also include a sensor or photodetector which functions to detect light reflected from the symbol. The photodetector is therefore positioned in the scanner or in an optical path in which it has a field of view which extends across and slightly past the symbol. A portion of the reflected light which is reflected off the symbol is detected and converted into an electrical signal, and electronic circuitry or software decodes the electrical signal into a digital representation of the data represented by the symbol that has been scanned. For example, the analog electrical signal from the photodetector may typically be converted into a pulse width modulated digital signal, with the widths corresponding to the physical widths of the bars and spaces. Such a signal is then decoded according to the specific symbology into a binary representation of the data encoded in the symbol, and to the alphanumeric characters so represented.
Laser scanners are not the only type of optical instrument capable of reading bar code symbols. Another type of bar code reader is one which incorporates detectors based upon charge coupled device (CCD) technology. In such readers size of the detector is larger than or substantially the same as the symbol to be read. The entire symbol is flooded with light from the reader, and each CCD cell is sequentially read out to determine the presence of a bar or a space. Such readers are lightweight and easy to use, but require substantially direct contact or placement of the reader on the symbol to enable the symbol to properly read. Such physical contact of the reader with the symbol is a preferred mode of operation for some applications, or as a matter of personal preference by the user.
Conventional bar code scanners provide an indication only of the presence or absence of an edge, and not of its strength or relative strength. This has the disadvantage that if the decoder does not decode the input signal to a valid bar code symbol, further attempts to decode require that the symbol be re-scanned, for example at a different distance, in a different direction, or using different threshold values.
Our co-pending US application attempts to alleviate these difficulties by providing a system in which the strengths of the edges are determined and are fed to the decoder prior to decoding commencing. Decoding then takes place using a particular threshold, in software. If decoding is unsuccessful at a particular threshold, the decoding algorithm can be arranged to try again, automatically, using a different threshold without the need to re-scan the symbol. Although the bar code scanner disclosed in this co-pending application is a significant advance on prior art scanners, it does have the disadvantage that additional hardware circuitry is required to determine the edge strengths.